/**
 * 
 */
package nl.boektrust.btsoep.shared.model;

import java.io.Serializable;


import com.google.gwt.user.client.rpc.IsSerializable;
import com.googlecode.objectify.annotation.Cached;
import com.googlecode.objectify.annotation.Subclass;
import com.googlecode.objectify.annotation.Unindexed;

/**
 * @author rao3
 *
 */
@Subclass
@Unindexed
@Cached(expirationSeconds=600)
public class PhysicalBookManifestation extends BookManifestation implements Serializable,IsSerializable {
	/**
	 * 
	 */
	private static final long serialVersionUID = 1744884795940326209L;
	/**
	 * 
	 */
	
	 private int weight;
	 private int height;
	 private int width;
	 private int thickness;
	

	/**
	 * @param title
	 */
	public PhysicalBookManifestation(String title) {
		super(title);
		this.weight = -1;
		this.height = -1;
		this.width = -1;
		this.thickness = -1;
	}

	/**
	 * 
	 */
	public PhysicalBookManifestation() {
		this("");
	}

	/**
	 * @return the weight
	 */
	public int getWeight() {
		return weight;
	}
	
	/**
	 * @param weight the weight to set
	 */
	public void setWeight(int weight) {
		this.weight = weight;
	}

	/**
	 * @return the height
	 */
	public int getHeight() {
		return height;
	}

	/**
	 * @param height the height to set
	 */
	public void setHeight(int height) {
		this.height = height;
	}
	
	/**
	 * @return the width
	 */
	public int getWidth() {
		return width;
	}

	/**
	 * @param width the width to set
	 */
	public void setWidth(int width) {
		this.width = width;
	}

	/**
	 * @return the length
	 */
	public int getThickness() {
		return thickness;
	}
	
	/**
	 * @param length the length to set
	 */
	public void setThickness(int thickness) {
		this.thickness = thickness;
	}

	public String toPrintString() {
		String string = super.toPrintString();
		string = string + "height: " + height + "\n";
		string = string + "weight:" + weight + "\n";
		string = string + "width:" + width + "\n";
		string = string + "thickness:" + thickness + "\n";
		return string;
	}
}
